Skip to content

升级 - springboot3升级springboot4

SpringBoot3升级SpringBoot4

基础环境适配

Java 版本门槛:Spring Boot 4 要求最低 Java 25(不再支持 Java 21 及以下)

sdkman list

遇到问题

对AbstractAuthenticationToken的引用不明确

java: 对AbstractAuthenticationToken的引用不明确
  org.springframework.security.authentication.AbstractAuthenticationToken 中的构造器 AbstractAuthenticationToken(@org.jspecify.annotations.Nullable java.util.Collection<? extends org.springframework.security.core.GrantedAuthority>) 和 org.springframework.security.authentication.AbstractAuthenticationToken 中的构造器 AbstractAuthenticationToken(org.springframework.security.authentication.AbstractAuthenticationToken.AbstractAuthenticationBuilder<?>) 都匹配

解决:使用Collections.emptyList()

Jackson2ObjectMapperBuilderCustomizer过时

using org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
java: 找不到符号
  符号:   类 Jackson2ObjectMapperBuilderCustomizer
  位置: 类 cn.istr.tiku.config.JacksonConfig

解决

JsonMapperBuilderCustomizer

https://juejin.cn/post/7575757258833297434

https://blog.csdn.net/weixin_41912069/article/details/156540233

@SneakyThrows注解

java: Error during the transformation of 'cn.istr.tiku.service.AttachmentService'; post-compiler 'lombok.bytecode.SneakyThrowsRemover' caused an exception: java.lang.IllegalArgumentException: Unsupported class file major version 69
  	at org.lombokweb.asm.ClassReader.<init>(ClassReader.java:200)
  	at org.lombokweb.asm.ClassReader.<init>(ClassReader.java:180)
  	at org.lombokweb.asm.ClassReader.<init>(ClassReader.java:166)
  	at lombok.bytecode.AsmUtil.fixJSRInlining(AsmUtil.java:37)
  	at lombok.bytecode.SneakyThrowsRemover.applyTransformations(SneakyThrowsRemover.java:46)
  	at lombok.core.PostCompiler.applyTransformations(PostCompiler.java:44)

上次更新时间:

最近更新